package com.jky.trial.service;


import com.jky.trial.common.BaseResult;
import com.jky.trial.common.ListResult;
import com.jky.trial.entity.Task;
import com.jky.trial.entity.User;
import com.jky.trial.vo.TaskVo;

import java.util.List;

public interface TaskService {
    /**
     * 创建
     *
     * @param record
     * @return
     */
    BaseResult create(Task record);

    /**
     * 批量导入勘察点
     *
     * @param list
     * @return
     */
    BaseResult importTask(List<Task> list);

    /**
     * 更新
     *
     * @param record
     * @return
     */
    int update(Task record);

    /**
     * 分配任务到某个销售员
     *
     * @param record
     * @return
     */
    int assign(Task record, User user);

    /**
     * 审核描述
     * @param record
     * @param user
     * @return
     */
    int check(Task record, User user);

    /**
     *
     * @param record 消息
     * @param user  提交用户
     * @return
     */
    int submit(Task record,User user);

    /**
     * 删除
     *
     * @param id
     * @return
     */
    int del(int id);

    /**
     * 详情
     *
     * @param id
     * @return
     */
    TaskVo detail(int id);
    TaskVo moreDetail(int id);

    /**
     * 分页
     *
     * @param record
     * @return
     */
    List<TaskVo> list(TaskVo record);

    /**
     * 描述员 List
     *
     * @param record
     * @return
     */
    List<TaskVo> msyList(TaskVo record);
    ListResult msyWidthProjectNamePage(TaskVo record);

    ListResult page(TaskVo record);
    BaseResult mapData(TaskVo record);

    /**
     * 描述眼
     *
     * @param record
     * @return
     */
    ListResult msyPage(TaskVo record);

    /**
     * 统计
     *
     * @param record
     * @return
     */
    long count(Task record);

    /**
     * 描述员统计
     *
     * @param record
     * @return
     */
    long mysCount(Task record);

}
